import Vue from 'vue'
// 引入组件
import ElementUI from 'element-ui'
// 引入样式文件
import 'element-ui/lib/theme-chalk/index.css'
import axios from './utils/request'
import App from './App.vue'
import router from './router'
import MyBreadcrumb from '@/components/MyBreadcrumb.vue'
import MyChannel from '@/components/MyChannel.vue'
import MyCover from '@/components/myCover.vue'
import EventBus from './utils/eventBus.js'
// import JSONbig from 'json-bigint'

// 以插件的格式使用Elmenet-ui
Vue.use(ElementUI)

Vue.config.productionTip = false
// Vue.component('组件名'，组件配置对象) //全局组件格式
Vue.component('MyBreadcrumb', MyBreadcrumb)
Vue.component('MyChannel', MyChannel)
Vue.component('myCover', MyCover)
// 添加事件总线
Vue.prototype.$eventBus = EventBus
// const str = '{ "id": 1253585734669959168 }'
// // JSON 是浏览器或js自带的内置对象，精度不够会导致数据丢失
// console.log(JSON.parse(str)) // 1253585734669959200

// // 它会把超出 JS 安全整数范围的数字转为一种类型为 BigNumber 的对象
// // 我们在使用的时候需要把这个 BigNumber.toString() 就能得到原来正确的数据了
// console.log(JSONbig.parse(str))
// // 对于JSONbig 它在处理数据时，会自动识别其中的 大数， 并以数组的格式保存起来
// console.log(JSONbig.parse(str).id.toString()) // 1253585734669959168

Vue.prototype.$axios = axios

new Vue({
  router,
  render: h => h(App)
}).$mount('#app')
